package com.example.demo.mapper;

import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.util.List;


/**
 * @author vsalw
 */
public interface UserMapper {

    /**
     * 根据id删除用户
     *
     * @param id 用户id
     */
    void deleteUser(Integer id);

    /**
     * 保存用户信息
     *
     * @param user 用户信息
     * @return int
     */
    int save(User user);


    /**
     * 根据id查询用户
     *
     * @param id 用户信息
     * @return User
     */
    User selectByPrimaryKey(Integer id);


    /**
     * 保存用户信息
     *
     * @param user 用户信息
     * @return int 更新数量
     */
    int updateByPrimaryKey(User user);


    /**
     * 查询所有用户信息
     *
     * @param
     * @return List<User>
     */
    List<User> selectAll();

    /**
     * 根据姓名用户信息
     *
     * @param userName 用户名
     * @return List<User>
     */
    List<User> selectByUsername(@Param("userName") String userName);
}